from openai import OpenAI


def get_answer(api_key, model, question):
    """
    使用火山引擎方舟平台的模型获取答案
    
    Args:
        api_key: API Key
        model: 模型 ID（推理接入点 ID）
        question: 问题内容
    """
    # 初始化 OpenAI 客户端，配置火山引擎方舟平台的 base_url
    client = OpenAI(
        api_key=api_key,
        base_url="https://ark.cn-beijing.volces.com/api/v3",
    )
    
    # 流式请求
    stream = client.chat.completions.create(
        model=model,
        max_tokens=20,
        messages=[
            {
                "role": "system",
                "content": "在选项中找出问题的正确答案，请保证信息的准确，并在回答时保持简洁，不需要任何其他分析反馈。回答最多使用20tokens"
            },
            {
                "role": "user",
                "content": question
            },
        ],
        stream=True,
    )
    
    # 收集流式响应
    answer = '│ HS：'
    for chunk in stream:
        if not chunk.choices:
            continue
        content = chunk.choices[0].delta.content
        if content:
            answer += content
    
    # 打印完整答案
    print(answer)


# 测试示例
# get_answer('your-api-key', 'your-model-id', '问题：《本草纲目》的作者是谁？选项：[李时珍 张仲景 华佗 孙思邈]')
